function fit=ptrue(name)
u=0;
switch name
    case {'ICF4'}
        pf = load('ICF4.mat');
        x_all = pf.pf;
        fit(:,1) = x_all(:,1);
        fit(:,2) = x_all(:,2);
    case {'ICF3'}
        pf = load('ICF3.mat');
        x_all = pf.pf;
        fit(:,1) = x_all(:,1);
        fit(:,2) = x_all(:,2);
    case {'ZDT1','ZDT4'}
        x=[0:0.001:1]';
        f1=x(:,1);
        f2=abs(1-f1.^0.5);
        fit(:,1)=f1;
        fit(:,2)=f2;
    case {'ZDT2','ZDT6'}
        x=[0:0.001:1]';
        f1=x(:,1);
        f2=abs(1-f1.^2);
        fit(:,1)=f1;
        fit(:,2)=f2;
    
    case 'ZDT3'
f1 = [0,1;0.00100000000000000,0.968345812639238;0.00200000000000000,0.955153059410946;0.00300000000000000,0.944945419309528;0.00400000000000000,0.936253113862375;0.00500000000000000,0.928507149556144;0.00600000000000000,0.921416045188337;0.00700000000000000,0.914806994656817;0.00800000000000000,0.908567761802690;0.00900000000000000,0.902620750240596;0.0100000000000000,0.896909830056251;0.0110000000000000,0.891392998060287;0.0120000000000000,0.886037993866751;0.0130000000000000,0.880819534911834;0.0140000000000000,0.875717494256097;0.0150000000000000,0.870715655364748;0.0160000000000000,0.865800834807638;0.0170000000000000,0.860962247828191;0.0180000000000000,0.856191039040391;0.0190000000000000,0.851479928299907;0.0200000000000000,0.846822938716841;0.0210000000000000,0.842215184411393;0.0220000000000000,0.837652702483616;0.0230000000000000,0.833132318216525;0.0240000000000000,0.828651535609415;0.0250000000000000,0.824208447461917;0.0260000000000000,0.819801660721072;0.0270000000000000,0.815430233868428;0.0280000000000000,0.811093623895463;0.0290000000000000,0.806791640981841;0.0300000000000000,0.802524409411864;0.0310000000000000,0.798292333580899;0.0320000000000000,0.794096068183952;0.0330000000000000,0.789936491863020;0.0340000000000000,0.785814683732651;0.0350000000000000,0.781731902314710;0.0360000000000000,0.777689566501121;0.0370000000000000,0.773689238232979;0.0380000000000000,0.769732606640067;0.0390000000000000,0.765821473429470;0.0400000000000000,0.761957739348194;0.0410000000000000,0.758143391574079;0.0420000000000000,0.754380491913406;0.0430000000000000,0.750671165703357;0.0440000000000000,0.747017591333907;0.0450000000000000,0.743421990317255;0.0460000000000000,0.739886617844262;0.0470000000000000,0.736413753776867;0.0480000000000000,0.733005694033377;0.0490000000000000,0.729664742330293;0.0500000000000000,0.726393202250021;0.0510000000000000,0.723193369608624;0.0520000000000000,0.720067525101902;0.0530000000000000,0.717017927211610;0.0540000000000000,0.714046805356573;0.0550000000000000,0.711156353276096;0.0560000000000000,0.708348722635209;0.0570000000000000,0.705626016843225;0.0580000000000000,0.702990285078693;0.0590000000000000,0.700443516515238;0.0600000000000000,0.697987634743973;0.0610000000000000,0.695624492389223;0.0620000000000000,0.693355865915154;0.0630000000000000,0.691183450621687;0.0640000000000000,0.689108855828704;0.0650000000000000,0.687133600248117;0.0660000000000000,0.685259107543802;0.0670000000000000,0.683486702079840;0.0680000000000000,0.681817604857757;0.0690000000000000,0.680252929643781;0.0700000000000000,0.678793679287295;0.0710000000000000,0.677440742231841;0.0720000000000000,0.676194889220169;0.0730000000000000,0.675056770194851;0.0740000000000000,0.674026911396107;0.0750000000000000,0.673105712658426;0.0760000000000000,0.672293444907615;0.0770000000000000,0.671590247859847;0.0780000000000000,0.670996127924224;0.0790000000000000,0.670510956310311;0.0800000000000000,0.670134467341983;0.0810000000000000,0.669866256978823;0.0820000000000000,0.669705781546195];
f2 = [0.183000000000000,0.665369586358169;0.184000000000000,0.659690464244171;0.185000000000000,0.653871979099685;0.186000000000000,0.647917775174147;0.187000000000000,0.641831689339911;0.188000000000000,0.635617748131144;0.189000000000000,0.629280164540677;0.190000000000000,0.622823334577173;0.191000000000000,0.616251833585250;0.192000000000000,0.609570412331519;0.193000000000000,0.602783992859757;0.194000000000000,0.595897664118726;0.195000000000000,0.588916677366453;0.196000000000000,0.581846441355031;0.197000000000000,0.574692517300304;0.198000000000000,0.567460613641064;0.199000000000000,0.560156580592638;0.200000000000000,0.552786404500042;0.201000000000000,0.545356201996098;0.202000000000000,0.537872213970194;0.203000000000000,0.530340799353589;0.204000000000000,0.522768428727433;0.205000000000000,0.515161677759882;0.206000000000000,0.507527220478932;0.207000000000000,0.499871822387823;0.208000000000000,0.492202333430055;0.209000000000000,0.484525680811303;0.210000000000000,0.476848861685677;0.211000000000000,0.469178935714010;0.212000000000000,0.461523017501995;0.213000000000000,0.453888268926219;0.214000000000000,0.446281891356259;0.215000000000000,0.438711117781212;0.216000000000000,0.431183204849140;0.217000000000000,0.423705424828085;0.218000000000000,0.416285057497429;0.219000000000000,0.408929381978480;0.220000000000000,0.401645668513313;0.221000000000000,0.394441170200966;0.222000000000000,0.387323114700201;0.223000000000000,0.380298695908122;0.224000000000000,0.373375065624004;0.225000000000000,0.366559325207770;0.226000000000000,0.359858517242573;0.227000000000000,0.353279617211022;0.228000000000000,0.346829525194587;0.229000000000000,0.340515057605751;0.230000000000000,0.334342938962490;0.231000000000000,0.328319793714659;0.232000000000000,0.322452138131841;0.233000000000000,0.316746372262194;0.234000000000000,0.311208771971823;0.235000000000000,0.305845481074101;0.236000000000000,0.300662503558375;0.237000000000000,0.295665695927373;0.238000000000000,0.290860759652577;0.239000000000000,0.286253233756727;0.240000000000000,0.281848487532528;0.241000000000000,0.277651713406514;0.242000000000000,0.273667919956918;0.243000000000000,0.269901925094235;0.244000000000000,0.266358349413061;0.245000000000000,0.263041609723608;0.246000000000000,0.259955912771149;0.247000000000000,0.257105249151472;0.248000000000000,0.254493387430239;0.249000000000000,0.252123868473947;0.250000000000000,0.250000000000000;0.251000000000000,0.248124851353187;0.252000000000000,0.246501248515630;0.253000000000000,0.245131769357049;0.254000000000000,0.244018739131956;0.255000000000000,0.243164226230136;0.256000000000000,0.242570038186515;0.257000000000000,0.242237717956279];
f3 = [0.410000000000000,0.232990608562986;0.411000000000000,0.219685897786201;0.412000000000000,0.206460422858664;0.413000000000000,0.193327160645450;0.414000000000000,0.180299055606243;0.415000000000000,0.167389006271832;0.416000000000000,0.154609851709802;0.417000000000000,0.141974357993578;0.418000000000000,0.129495204688996;0.419000000000000,0.117184971372667;0.420000000000000,0.105056124196376;0.421000000000000,0.0931210025117638;0.422000000000000,0.0813918055695846;0.423000000000000,0.0698805793077316;0.424000000000000,0.0585992032422482;0.425000000000000,0.0475593774754529;0.426000000000000,0.0367726098352504;0.427000000000000,0.0262502031596122;0.428000000000000,0.0160032427401172;0.429000000000000,0.00604258393831630;0.430000000000000,-0.00362116001142732;0.431000000000000,-0.0129776299991300;0.432000000000000,-0.0220167328230697;0.433000000000000,-0.0307286527471914;0.434000000000000,-0.0391038628190608;0.435000000000000,-0.0471331359355857;0.436000000000000,-0.0548075556439517;0.437000000000000,-0.0621185266654362;0.438000000000000,-0.0690577851300260;0.439000000000000,-0.0756174085100027;0.440000000000000,-0.0817898252409475;0.441000000000000,-0.0875678240188915;0.442000000000000,-0.0929445627626414;0.443000000000000,-0.0979135772306145;0.444000000000000,-0.102468789281845;0.445000000000000,-0.106604514771153;0.446000000000000,-0.110315471068817;0.447000000000000,-0.113596784195448;0.448000000000000,-0.116443995563126;0.449000000000000,-0.118853068314252;0.450000000000000,-0.120820393249937;0.451000000000000,-0.122342794340178;0.452000000000000,-0.123417533808443;0.453000000000000,-0.124042316783749;0.454000000000000,-0.124215295513694;0.455000000000000,-0.123935073132390;0.456000000000000,-0.123200706977647;0.457000000000000,-0.122011711452230;0.458000000000000,-0.120368060424458];
f4 = [0.619000000000000,-0.134695141401305;0.620000000000000,-0.151827643822514;0.621000000000000,-0.168650812512321;0.622000000000000,-0.185147487748899;0.623000000000000,-0.201300782523480;0.624000000000000,-0.217094100424761;0.625000000000000,-0.232511153283687;0.626000000000000,-0.247535978559902;0.627000000000000,-0.262152956451464;0.628000000000000,-0.276346826709553;0.629000000000000,-0.290102705140243;0.630000000000000,-0.303406099775594;0.631000000000000,-0.316242926696668;0.632000000000000,-0.328599525491345;0.633000000000000,-0.340462674330139;0.634000000000000,-0.351819604643585;0.635000000000000,-0.362658015385075;0.636000000000000,-0.372966086863464;0.637000000000000,-0.382732494130092;0.638000000000000,-0.391946419905339;0.639000000000000,-0.400597567030204;0.640000000000000,-0.408676170428898;0.641000000000000,-0.416173008568844;0.642000000000000,-0.423079414404986;0.643000000000000,-0.429387285795793;0.644000000000000,-0.435089095378831;0.645000000000000,-0.440177899894314;0.646000000000000,-0.444647348945557;0.647000000000000,-0.448491693185801;0.648000000000000,-0.451705791921444;0.649000000000000,-0.454285120122273;0.650000000000000,-0.456225774829855;0.651000000000000,-0.457524480955864;0.652000000000000,-0.458178596462687];
f5 = [0.824000000000000,-0.471811272718058;0.825000000000000,-0.491658200708147;0.826000000000000,-0.510973507650226;0.827000000000000,-0.529737258135560;0.828000000000000,-0.547930018304538;0.829000000000000,-0.565532876466650;0.830000000000000,-0.582527463245635;0.831000000000000,-0.598895971228426;0.832000000000000,-0.614621174096986;0.833000000000000,-0.629686445222655;0.834000000000000,-0.644075775703051;0.835000000000000,-0.657773791822140;0.836000000000000,-0.670765771914588;0.837000000000000,-0.683037662616106;0.838000000000000,-0.694576094482019;0.839000000000000,-0.705368396956953;0.840000000000000,-0.715402612679097;0.841000000000000,-0.724667511103138;0.842000000000000,-0.733152601426664;0.843000000000000,-0.740848144805406;0.844000000000000,-0.747745165843481;0.845000000000000,-0.753835463345403;0.846000000000000,-0.759111620317402;0.847000000000000,-0.763567013206292;0.848000000000000,-0.767195820364881;0.849000000000000,-0.769993029733661;0.850000000000000,-0.771954445729289;0.851000000000000,-0.773076695331142;0.852000000000000,-0.773357233358034];
fit = [f1(1:5:end,:);f2(1:5:end,:);f3(1:3:end,:);f4(1:3:end,:);f5(1:3:end,:)];

    case 'F1'
        x=[0:0.001:1]';
        f1=(x(:,1));
        f2=abs(1-f1.^0.5).^(3+0.1);
        fit(:,1)=f1;
        fit(:,2)=f2;
    case 'F2'
        g2 = 10:15;
        b = numel(g2);
        x=[0:0.001:1]';
        Ht=0.25+0.45*abs(sin(0.5*pi));
        f1=x(:,1);
        f2=1-(f1.^((Ht+b*((-1-Ht).^2))^(-1)));
        fit(:,1)=f1;
        fit(:,2)=f2;
    case 'F3'
        x=[0:0.001:1]';
        Ft=10^(2*sin(0.5*pi));
        Gt=abs(sin(0.5*pi));
        fit(:,1)=(x(:,1).^Ft);
        fit(:,2)=(1+Gt)*(1-sqrt(fit(:,1)./(1+Gt)));  
    case 'F4'
        Gt=0.25+0.45*abs(sin(0.5*pi));
        x=linspace(Gt-2,Gt+2,1000)'; 
        f1=((x(:,1)-Gt).^2);
        f2=(sqrt(f1)-2).^2;
        fit(:,1)=f1;
        fit(:,2)=f2;
    case 'F5'
         x=[0:0.001:1]';
         f1=(x(:,1));
         Ht = 0.75*sin(0.5*pi)+1.25;
         f2=1-(f1.^0.5).^Ht-(f1).^Ht.*sin(10*pi*f1);
         fit(:,1)=f1;
         fit(:,2)=f2;
    case 'F6'
        x=[0:0.001:1]';
        f1=(cos(x(:,1)*(pi/2)));
        f2=(sin(x(:,1)*(pi/2)));  
        fit(:,1)=f1;
        fit(:,2)=f2;
    case 'DTLZ1'
        x = [0:0.1:1]';
        f1 = x*x'/2;
        f2 = x*(1-x')/2;
        f3 = (1-x)*ones(size(x'))/2;
        fit(:,1) = f1(:);
        fit(:,2) = f2(:);
        fit(:,3) = f3(:);
    case 'DTLZ2'
        a = linspace(0,pi/2,10)';
        f1 = sin(a)*cos(a');
        f2 = sin(a)*sin(a');
        f3 = cos(a)*ones(size(a'));
        fit(:,1) = f1(:);
        fit(:,2) = f2(:);
        fit(:,3) = f3(:);
    case 'DTLZ5'
        R = [0:1/(100-1):1;1:-1/(100-1):0]';
        R = R./repmat(sqrt(sum(R.^2,2)),1,size(R,2));
        R = [R(:,ones(1,3-2)),R];
        R = R./sqrt(2).^repmat([3-2,3-2:-1:0],size(R,1),1);
        fit(:,1) = R(:,1);
        fit(:,2) = R(:,2);
        fit(:,3) = R(:,3);
    case 'DTLZ7'
        [x,y]  = meshgrid(linspace(0,1,20));
        z      = 2*(3-x/2.*(1+sin(3*pi*x))-y/2.*(1+sin(3*pi*y)));
        nd     = reshape(NDSort([x(:),y(:),z(:)],1)==1,size(z));
        z(~nd) = nan;
        fit(:,1) = x(:);
        fit(:,2) = y(:);
        fit(:,3) = z(:);
        index = isnan(fit(:,3));
        fit(index,:) = [];
    case 'WFG1'
        a = linspace(0,pi/2,10)';
        x = (1-cos(a))*(1-cos(a'));
        y = (1-cos(a))*(1-sin(a'));
        z = 1 - a*ones(size(a'))*2/pi - cos(20*a*ones(size(a'))+pi/2)/10/pi;
        R1 = x*2;
        R2 = y*4;
        R3 = z*6;
        fit(:,1) = R1(:);
        fit(:,2) = R2(:);
        fit(:,3) = R3(:);
    case 'WFG2'
        a  = linspace(0,pi/2,40)';
        x  = (1-cos(a))*(1-cos(a'));
        y  = (1-cos(a))*(1-sin(a'));
        z  = 1 - a*ones(size(a'))*2/pi.*cos(10*a*ones(size(a'))).^2;
        nd = reshape(NDSort([x(:),y(:),z(:)],1)==1,size(z));
        z(~nd) = nan;
        R1 = x*2;
        R2 = y*4;
        R3 = z*6;
        fit(:,1) = R1(:);
        fit(:,2) = R2(:);
        fit(:,3) = R3(:);
    case 'WFG3'
        N = 100;
        X = linspace(0,1,N)';
        X = [X,zeros(N,3-2)+0.5,zeros(N,1)];
        R = linear1(X);
        R = repmat(2:2:2*3,size(R,1),1).*R;
        fit = R;
    case 'WFG4'
        a = linspace(0,pi/2,10)';
        R1 = sin(a)*cos(a')*2;
        R2 = sin(a)*sin(a')*4;
        R3 = cos(a)*ones(size(a'))*6;
        fit(:,1) = R1(:);
        fit(:,2) = R2(:);
        fit(:,3) = R3(:);
    case 'IMOP1'
        x = linspace(0.5^4,1,floor(1000/2))';
        fit(:,1) = [flip((1-x.^0.25).^4);x];
        fit(:,2) = [flip(x);(1-x.^0.25).^4];
    case 'IMOP2'
        x = linspace(0,0.5^0.25,floor(1000/2))';
        fit(:,1) = [x;flip((1-x.^4).^0.25)];
        fit(:,2) = [(1-x.^4).^0.25;flip(x)];
    case 'IMOP3'
        x      = linspace(0,1,1000)';
        R(:,1) = 1 + cos(x*pi*10)/5 - x;
        R(:,2) = x;
        fit      = R(NDSort(R,1)==1,:);
    case 'IMOP4'
        R(:,1) = linspace(0,1,100)';
        R(:,2) = R(:,1) + sin(10*pi*R(:,1))/10;
        R(:,3) = 1 - R(:,1);
        fit(:,1) = R(:,1);
        fit(:,2) = R(:,2);
        fit(:,3) = R(:,3);
    case 'IMOP5'
        [x,y]   = meshgrid(linspace(-0.5,0.5,50));
        z       = 0.5 - x - y;
        R       = [x(:),y(:)];
        r       = [0.4*cos((1:8)'*pi/4),0.4*sin((1:8)'*pi/4)];
        fes     = min(pdist2(R,r),[],2) <= 0.1;
        z(~fes) = nan;
        fit(:,1) = x(:);
        fit(:,2) = y(:);
        fit(:,3) = z(:);
    case 'IMOP6'
        [x,y] = meshgrid(linspace(0,1,50));
        z     = 1 - x/2 - y/2;
        R     = [x(:),y(:),z(:)];
        r     = max(0,min(sin(3*pi*R(:,1)).^2,sin(3*pi*R(:,2)).^2)-0.05);
        R     = R + repmat(ceil(r),1,3);
        fes   = NDSort(R,1) == 1;
        z(reshape(~fes,size(z))) = nan;
        fit(:,1) = x(:);
        fit(:,2) = y(:);
        fit(:,3) = z(:);
    case 'IMOP7'
        a = linspace(0,pi/2,50)';
        x = sin(a)*cos(a');
        y = sin(a)*sin(a');
        z = cos(a)*ones(size(a'));
        R = [x(:),y(:),z(:)];
        fes = min(min(abs(R(:,1)-R(:,2)),abs(R(:,2)-R(:,3))),abs(R(:,3)-R(:,1))) <= 0.1;
        z(reshape(~fes,size(z))) = nan;
        fit(:,1) = x(:);
        fit(:,2) = y(:);
        fit(:,3) = z(:);
    case 'IMOP8'
        [x,y]  = meshgrid(linspace(0,1,150));
         z      = 3 - x.*(1+sin(19*pi.*x)) - y.*(1+sin(19*pi.*y));
         nd     = reshape(NDSort([x(:),y(:),z(:)],1)==1,size(z));
         z(~nd) = nan;
        fit(:,1) = x(:);
        fit(:,2) = y(:);
        fit(:,3) = z(:);
end